///////////////////////////////////////////////////////////////////////////// // NORITSU NetOrder SDK Ver 1.0.3 // // QssSvr.idl // // Copyright (C) 2001 Noritsu Koki Co.,Ltd. // All rights reserved. // // Date : 2001/11/20 // ///////////////////////////////////////////////////////////////////////////// [ uuid(6b4e94fe-5fc7-40a0-acf3-bae3063c9cfe), // UUID version(1.0), // Interface version pointer_default(unique) // Pointer default ] interface QssSvr { typedef pipe byte QSS_FRAME_PIPE; typedef pipe byte QSS_PROFILE_PIPE; typedef struct _QSS_PRINTER_INFO { char Name[20]; // QSS Model unsigned long Version; // Interface version unsigned char Reserve[40]; // (Unused) } QSS_PRINTER_INFO; typedef struct _QSS_CLIENT_INFO { char User[20]; // User Name char Host[20]; // Host Name unsigned char Address[6]; // MAC Address unsigned char Reserve[50]; // (Unused) } QSS_CLIENT_INFO; typedef struct _QSS_FRAME_PARAM { unsigned short OrderNo; // Order Number unsigned short FrameNum; // Number of frame(s) unsigned short FrameNo; // Frame Number char FileName[18]; // File name of image unsigned long FileSize; // Size of image unsigned long ImageFormat; // Format of image unsigned short PrintSize; // Print size unsigned short RepeatNum; // Number of repeat unsigned short RepeatPos; // CVP printing to locate the print count. char CvpString1[120]; // Information to be printed on the 1st line of CVP. char CvpString2[120]; // Information to be printed on the 2nd line of CVP. unsigned short CvpFlg; // CVP Configuration unsigned char Reserve[40]; // (Unused) } QSS_FRAME_PARAM; typedef struct _QSS_ORDER_PARAM { unsigned short OrderNo; // Order Number unsigned short FrameNum; // Number of frame(s) unsigned short PaperWidth; // Paper Width unsigned short PaperLengthC; // Paper Length[Classical] unsigned short PaperLengthP; // Paper Length[Panoramic] unsigned short PaperLengthH; // Paper Length[High-definition] unsigned short Surface; // Surface unsigned short WithBorderC; // Border[Classical] unsigned short WithBorderP; // Border[Panoramic] unsigned short WithBorderH; // Border[High-definition] unsigned short IndexPrintFlg; // Index print type. unsigned short PaperFittingFlg; // Paper Fitting unsigned short IndexPaperWidth; // Paper width for index print - Version 1.0.1 unsigned short IndexSurface; // Surface for index print - Version 1.0.1 unsigned short CmsFlg; // CMS - Version 1.0.3 unsigned char Reserve[34]; // (Unused) } QSS_ORDER_PARAM; typedef struct _QSS_PAPER_INFO { unsigned short PaperWidth; // Paper Width unsigned short Resolut; // Resolut unsigned short MagazineState; // Presence of paper magazines. unsigned long PaperRemaind; // Paper remaining unsigned short Surface; // Surface unsigned short PaperLengthMin; // Minimum feed length - Version 1.0.3 unsigned short PaperLengthMax; // Maximum feed length - Version 1.0.3 unsigned char Reserve[48]; // (Unused) } QSS_PAPER_INFO; typedef struct _QSS_ERROR_INFO { unsigned short MainNo; // Number of errors unsigned short SubNo; // Suffix of error number unsigned short Level; // Error level wchar_t Message[256]; // Error message unsigned char Reserve[26]; // (Unused) } QSS_ERROR_INFO; typedef struct _QSS_ORDER_STATE { unsigned short OrderNo; // Order Number unsigned short OrderState; // Status of order unsigned char Reserve[28]; // (Unused) } QSS_ORDER_STATE; typedef struct _QSS_PRINTER_STATE { unsigned short QssState; // Define the status of QSS unsigned short AbleReceive; // Determine whether the input from the external source is printable or not on QSS. unsigned short AblePU; // Determine whether PU connected to QSS is enabled or not. QSS_PAPER_INFO MagazineA; // Define the information related to the paper magazine installed on QSS. QSS_PAPER_INFO MagazineB; // unsigned long SupportImageFormat; // Define the image format that QSS supports. unsigned hyper TotalPrintNum; // Define the total number of prints of the order currently being printed or printed last. unsigned short TemperatureCD; // Define the temperature of CD unsigned short TemperatureBF; // Define the temperature of BF unsigned short TemperatureSTB; // Define the temperature of STB unsigned short RemaindQuantityCD; // (Unused) unsigned short RemaindQuantityBF; // (Unused) unsigned short RemaindQuantitySTB; // (Unused) unsigned hyper SpoolerSpace; // Define the free space for the spool. - Version 1.0.3 unsigned char Reserve[26]; // (Unused) } QSS_PRINTER_STATE; typedef struct _QSS_PRINT_CHANNEL { short ChNo; // Define the channel number. unsigned short Meishou[11]; // Define the channel name. short Printtype; // Define the type of print. unsigned char InpMediaType; // Define the type of input media unsigned short MeishouCph[3][6]; // Define the print name for each type of print. short Haba[3]; // Define the width of the print for each type of print. short Mensitu[3]; // Define the type of paper surface for each type of print. short Feed[3]; // Define the advance length of paper for each type of print. short WbHaba[3]; // Define the width of the white border for each type of print. short SizeRate[3]; // Define the magnification ratio of the image for each type of print. signed short RokouichiHosei[3]; // Define the exposure position correction for each type of print. short CvpSw; // Define CVP printing flag. short FPSw; // Define the front print position. short IDPSize[3]; // Define the type of index print. short IndexHaba[3]; // Define the paper width of index paper. short IndexMensitu[3]; // Define the paper surface of index print. unsigned char OutMediaSw; // Define the type of output media. unsigned short OutMediaFormat; // Define the output format. unsigned char OutMediaInfoQuality; // Define the image quality. - Version 1.0.3 unsigned char OutMediaInfoQualityPer; // Define the quality ratio of the image to be saved to media. - Version 1.0.3 unsigned char OutMediaInfoSize; // Define the output size. - Version 1.0.3 unsigned char PaperFitSW; // Define the type of paper fitting. - Version 1.0.3 unsigned short EditModeNo; // Define the edit type. - Version 1.0.3 unsigned short Template; // Define the template type. - Version 1.0.3 unsigned char PapScan120; // (Unused) - Version 1.0.3 unsigned char Reserve[27]; // (Unused) } QSS_PRINT_CHANNEL; typedef struct _QSS_PU_INFO { char NameC[20]; // Product Name[Classical] char NameP[20]; // Product Name[Panoramic] char NameH[20]; // Product Name[High-definition] unsigned short QuantityC; // Print Count[Classical] unsigned short QuantityP; // Print Count[Panoramic] unsigned short QuantityH; // Print Count[High-definition] unsigned short PriceC; // Unit Price[Classical] unsigned short PriceP; // Unit Price[Panoramic] unsigned short PriceH; // Unit Price[High-definition] unsigned long SumC; // Price[Classical] unsigned long SumP; // Price[Panoramic] unsigned long SumH; // Price[High-definition] unsigned long ChargePrice; // Basic fee (charge fee) to be printed unsigned long IndexPrice; // Index price to be printed unsigned char Reserve[36]; // (Unused) } QSS_PU_INFO; typedef struct _QSS_SUM_INFO { unsigned long PChC[100]; // Define the total number of prints made in each print channel.[Classical] unsigned long PChP[100]; // Define the total number of prints made in each print channel.[Panoramic] unsigned long PChH[100]; // Define the total number of prints made in each print channel.[High-definition] unsigned long PaperPrint; // Total number of prints in Print Totals unsigned long PaperIndex; // Total number of prints in Index Print Totals unsigned long PaperSetup; // Total number of prints in Setup Print Totals unsigned long PaperLabel; // Total number of prints in Label Totals unsigned long PaperOther; // Total number of prints of Others unsigned long PaperTotal; // Total of PaperPrint, PaperIndex, PaperSetup, PaperLabel, and PaperOther. unsigned long WriteMedia; // Total number of media unsigned long WriteImage; // Total number of images written into storage media. unsigned short DisposalSpec; // Define the process specification of QSS. unsigned long TotalHojyu[9]; // Define the total amount of replenisher solution used on QSS. unsigned char Reserve[42]; // (Unused) } QSS_SUM_INFO; typedef struct _QSS_PROFILE_INFO // Version 1.0.3 { unsigned short DeviceKind; // Define the device whose profile you wish to get. unsigned short PaperWidth; // Paper Width unsigned short Surface; // Surface unsigned char Reserve[26]; // (Unused) } QSS_PROFILE_INFO; long QssGetName( [out] QSS_PRINTER_INFO* QssInfo // [out] QSS information ); long QssTransmitFile( [in] QSS_CLIENT_INFO ClientInfo, // [in] Client Information [in] QSS_FRAME_PIPE Pipe, // [in] RPC pipe [in] QSS_FRAME_PARAM FrameParam // [in] Frame print parameter ); long QssSetOrder( [in] QSS_CLIENT_INFO ClientInfo, // [in] Client Information [in] QSS_ORDER_PARAM OrderParam // [in] Order Print Parameter ); long QssAbort( [in] QSS_CLIENT_INFO ClientInfo, // [in] Client Information [in] unsigned short OrderNo // [in] Request number of the order to be deleted ); long QssSetPUInfo( [in] QSS_CLIENT_INFO ClientInfo, // [in] Client Information [in] unsigned short OrderNo, // [in] Request number [in] QSS_PU_INFO PuInfo // [in] PU output information ); long QssGetPaper( [in] short Flag, // [in] Get flag [in] long BufferNum, // [in] Number of buffer for paper information [out] long* PaperNum, // [out] Number of paper magazine installed / Number of paper magazine registered [out, size_is(BufferNum)] QSS_PAPER_INFO* PaperInfo // [out] Paper information ); long QssGetError( [in] short Flag, // [in] Get flag [in] long BufferNum, // [in] Buffer number of Error information [out] long* ErrorNum, // [out] Number of errors and/or attention messages currently occur [out, size_is(BufferNum)] QSS_ERROR_INFO* ErrorInfo // [out] Error information ); long QssGetOrderState( [in] QSS_CLIENT_INFO ClientInfo, // [in] Client Information [in] short Flag, // [in] Get flag [in] long BufferNum, // [in] Number of buffer for order status [out] long* OrderNum, // [out] Number of order acquired [in, out, size_is(BufferNum)] QSS_ORDER_STATE* OrderState // [in][out] Order status ); long QssGetPrinterState( [out] QSS_PRINTER_STATE* PrinterState // [out] Status of QSS ); long QssGetChannelInfo( [in] long BufferNum, // [in] Number of buffer for print channel information [out] long* ChannelNum, // [out] Number of print channel information [out, size_is(BufferNum)] QSS_PRINT_CHANNEL* PrintChannel // [out] Print channel information ); long QssGetSumInfo( [out] QSS_SUM_INFO* SumInfo // [out] Total information ); long QssGetProfile( [in] QSS_PROFILE_INFO ProfileInfo, // [in] Get profile information [out] QSS_PROFILE_PIPE Pipe // [out] RPC pipe ); }